Чтобы в табличном поле отобразить какие-то данные, у него должно быть установлен источник данных (свойство "Значение"). Источником данных может являться таблица значений, дерево значений, табличная часть объекта или динамический список (элементы справочника, документы и т.д.). Последний способ реализуется привязкой табличного поля к объекту типа "СправочникСписок", "ДокументСписок", "РегистрСведенийСписок" и т.д.
При программном изменении источника данных в табличном поле система сама не создает колонки. Начинающие разработчики часто забывают вызвать метод СоздатьКолонки, который удаляет все текущие колонки и создает новые в соответствии с новым источником данных. Такое поведение системы было определено специально, потому что разработчик может определить свой состав колонок.
Программное изменение источника данных для табличного поля может произойти в следующих ситуациях:
Замечание. Для программного изменения свойства "ТипЗначения" требуется, чтобы табличное поле не было привязано ни к какому источнику данных (свойство "Данные"), иначе будет выдано сообщение об ошибке.
В принципе, можно обойтись и без вызова метода "СоздатьКолонки()", если создавать каждую колонку программно через свойство-коллекцию "Колонки".Конечно, всегда есть возможность совместить эти подходы, т.е. сначала создать колонки в автоматическом режиме методом "СоздатьКолонки", а потом удалить или просто скрыть ненужные.